#ifndef __LS_MSG_H__
#define __LS_MSG_H__

#include "level.hpp"
#include "util.hpp"
#include <thread>

namespace log_system
{
    struct LogMsg
    {
        LogLevel::value _logLevel;
        time_t _logTime;
        size_t _line;
        std::thread::id _tid;
        std::string _file;
        std::string _logger;
        std::string _payload;

        LogMsg(LogLevel::value logLevel,
        const std::string file,
        size_t line,
        const std::string logger,
        const std::string payload):
        _logLevel(logLevel),
        _logTime(util::Date::now()),
        _line(line),
        _tid(std::this_thread::get_id()),
        _file(file),
        _logger(logger),
        _payload(payload)
        {}
    };
}


#endif